﻿using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;

namespace Identify.Controllers
{/// <summary>
 /// 讲解.net core 的Identity，登录验证
 /// Identity是.net core帮助我们集成了登录的过程
 /// </summary>
    public class IdentityController : Controller
    {
        private readonly IHttpContextAccessor _httpcontext;

        public IdentityController(IHttpContextAccessor httpContextAccessor)
        {
            _httpcontext = httpContextAccessor;
        }

        public IActionResult Index()
        {
            //在讲HTTPContext的时候，上下文对象HTTPContext中就有一个User属性
            var identity = _httpcontext.HttpContext.User.Identity;//身份属性是只读的



            return View();
        }


        /**
            Identity重点类
                ①、Usermanager<IdentityUser>
                               用于操作用户管理的服务类
                ②、SigninManager<IdentityUser>
                               用户身份校验的类
         **/

        /**
              需要安装的依赖包：
                ①、Microsoft.AspNetCore.Identity,EntityFrameworkCore
                ②、Microsoft.EntityFrameworkCore
                ③、Microsoft.EntityFrameworkCore.SqlServer
                ④、Microsoft.EntityFrameworkCore.Tools  //命令在包控制台管理器中运行
                ⑤、Microsoft.AdpNetCore.Identity.UI   //将一组通用标识服务添加到应用程序，包括默认UI、令牌提供程序，以及配置身份验证使用标识cookie

         * */
    }

}
